<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>Document</title>
</head>
<body>
  <script>
    //1.普通函数的使用过程
    function foo() {
      console.log("foo函数被执行~")
    }
  foo()
  foo();//[],()会被当成与前面为一个整体
  //2.定义函数，定义完这个函数之后，会要求这个函数立即被执行
  //{} 代码块/对象类型
  //() 控制我们的优先级（2+3）*5/表示我们函数的调用/函数的参数
  //[]  可以代表定义一个数组/从数组/对象中取值  obj[name]/表示对象的计算属性
  //报错一般都是由分号造成的
    /*
  if(true){

  }
  */
  //立即执行函数，一般不需要函数名字，最常用的写法
  (function (){
    console.log("bar函数被执行了~")
  })();
  //立即执行函数，传递参数
  (function (name){
    console.log("bar函数被执行了~",name)
  })("Lucy")
  //拿到立即执行函数的结果
  var result=(function (name){
    console.log("bar函数被执行了~",name)
    return "Hello world"
  })("Lucy")
  console.log(result)
  </script>
</body>
</html>